from apscheduler.schedulers.background import BackgroundScheduler
import time


def scheduler_test():
    print('定时任务触发:', time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()))


scheduler = BackgroundScheduler()
try:
    # 添加定时任务，每秒执行一次
    scheduler.add_job(scheduler_test, 'interval', seconds=5, id='test', replace_existing=True, timezone='Asia/Shanghai')
    # 启动定时任务
    scheduler.start()

    # 阻止主程序立即退出，以便至少有一个任务被执行
    while True:
        time.sleep(2)  # 主线程休眠2秒，或者您可以等待用户输入等
except (KeyboardInterrupt, SystemExit):
    # 当按下Ctrl+C或系统退出时，停止调度器
    scheduler.shutdown()
except Exception as e:
    print(e)
    scheduler.shutdown()